package cn.wolfcode.luowowo.article.mapper;

import cn.wolfcode.luowowo.article.domain.Scenic;
import cn.wolfcode.luowowo.article.query.ScenicQueryObject;

import java.util.List;

public interface ScenicMapper {
    /**
     * 删除
     * @param id 景点id
     * @return
     */
    int deleteByPrimaryKey(Long id);

    /**
     * 添加
     * @param record 景点对象
     * @return
     */
    int insert(Scenic record);

    /**
     * 查询单个
     * @param id 景点id
     * @return
     */
    Scenic selectByPrimaryKey(Long id);

    /**
     * 查询所有
     * @return
     */
    List<Scenic> selectAll();

    /**
     * 更新
     * @param record 景点对象
     * @return
     */
    int updateByPrimaryKey(Scenic record);

    /**
     * 高级查询
     * @param qo 查询条件
     * @return
     */
    List<Scenic> queryForList(ScenicQueryObject qo);

    /**
     * 热门点评前五
     * @param destId 目的地id
     * @return
     */
    List<Scenic> commentTop5(Long destId);

    /**
     * 查询热度
     * @return
     */
    List<Scenic> selectHot();

    /**
     * 通过主题查询主题下的景点
     * @param themeId 主题景点
     * @return
     */
    List<Scenic> queryByThemeId(Long themeId);
}